home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / TEMP / GNU / bison / Lexical < prev    next >
Text File  |  1995-06-28  |  2KB  |  31 lines

  1. Lexical
  2. Previous: <Parser Function=>ParserFunc> * Next: <Error Reporting=>ErrorRepor> * Up: <Interface=>Interface>
  3.  
  4. #Wrap on
  5. {fH3}The Lexical Analyzer Function {fCode}yylex{f}{f}
  6.  
  7. The {fUnderline}lexical analyzer{f} function, {fCode}yylex{f}, recognizes tokens from
  8. the input stream and returns them to the parser.  Bison does not create
  9. this function automatically; you must write it so that {fCode}yyparse{f} can
  10. call it.  The function is sometimes referred to as a lexical scanner.
  11.  
  12. In simple programs, {fCode}yylex{f} is often defined at the end of the Bison
  13. grammar file.  If {fCode}yylex{f} is defined in a separate source file, you
  14. need to arrange for the token-type macro definitions to be available there.
  15. To do this, use the {fEmphasis}-d{f} option when you run Bison, so that it will
  16. write these macro definitions into a separate header file
  17. {fCite}{fStrong}name{f}.tab.h{f} which you can include in the other source files
  18. that need it.  \*Note <Invocation=>Invocation>: Invoking Bison.
  19.  
  20. #Wrap off
  21. <Calling Convention=>CallingCon>:  How {fCode}yyparse{f} calls {fCode}yylex{f}.
  22. <Token Values=>TokenValue>:      How {fCode}yylex{f} must return the semantic value
  23.                         of the token it has read.
  24. <Token Positions=>TokenPosit>:   How {fCode}yylex{f} must return the text position
  25.                         (line number, etc.) of the token, if the
  26.                         actions want that.
  27. <Pure Calling=>PureCallin>:      How the calling convention differs
  28.                         in a pure parser (\*Note <Pure Decl=>PureDecl>: A Pure (Reentrant) Parser).
  29. #Wrap on
  30.  
  31.